package com.example.glgk.mapper;

import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.example.glgk.dto.DropDownDto;
import com.example.glgk.dto.QueryEscalation;
import com.example.glgk.dto.UserInfo;
import com.example.glgk.dto.report.IndicatorDto;
import com.example.glgk.dto.report.ReportSearchDto;
import com.example.glgk.entity.IndicatorDataEntity;
import com.example.glgk.entity.report.ElementEntity;
import com.example.glgk.entity.report.QueryIndexEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @author liuxingkun
 */
@Mapper
public interface IndicatorDataMapper extends BaseMapper<IndicatorDataEntity> {

    List<IndicatorDataEntity> selectAll(@Param("queryEscalation") QueryEscalation queryEscalation);

    IndicatorDataEntity selectByCondition(@Param("indicatorItem") String indicatorItem);

    List<DropDownDto> selectDrop(UserInfo userInfo);

    List<IndicatorDataEntity> queryMajorIndicator(@Param("queryEscalation") QueryEscalation queryEscalation);

    List<DropDownDto> queryIndicator(UserInfo userInfo);

    List<String> queryDeptName();

    List<String> selectByUser(@Param("search")ReportSearchDto search);

    List<IndicatorDto> selectByDept(@Param("search") ReportSearchDto search);

    List<ElementEntity> queryIndexValue(QueryIndexEntity indexEntity);
}
